package com.heima.review.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.heima.model.comment.dtos.CommentPageQueryDTO;
import com.heima.model.comment.dtos.CommentSaveDto;
import com.heima.model.review.CommentRepaySaveDto;
import com.heima.model.review.dtos.ReviewPageDTO;
import com.heima.review.entity.AdComment;
import com.heima.review.entity.vo.CommentListVo;

import java.util.List;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author HM
 * @since 2023-04-10
 */
public interface AdCommentService extends IService<AdComment> {
    /**
     * 作者回复评论
     *
     * @param dto
     */
    void commentRepay(CommentRepaySaveDto dto);

    void delComment(Long commentId);

    void delCommentRepay(Long replyId);

    /**
     * 文章查询列表
     *
     * @param dto
     * @return
     */
    List<CommentListVo> load(ReviewPageDTO dto);

    /**
     * 评论和回复查询所有
     *
     * @param dto
     * @return
     */
    List<AdComment> getPage(CommentPageQueryDTO dto);

    /**
     * 发布评论
     *
     * @param dto
     * @return
     */
    void saveComment(CommentSaveDto dto);


    /**
     * 发布评论
     *
     * @param dto
     * @return
     */
    void saveCommentRepay(CommentRepaySaveDto dto);

    void delCommentByArtilceId(Long articleId);
}
